"""
时间 枚举类
"""

from utils.enum_utils.base import (
    IntegerEnum,
    StringEnum,
)


class Week(IntegerEnum):
    """ 周次（星期几） 枚举类 """

    MONDAY = 1, "周一"
    TUESDAY = 2, "周二"
    WEDNESDAY = 3, "周三"
    THURSDAY = 4, "周四"
    FRIDAY = 5, "周五"
    SATURDAY = 6, "周六"
    SUNDAY = 7, "周日"


class TimeUnit(StringEnum):
    """ 时间单位 枚举类 """

    YEAR = "year", "年"
    SEASON = "season", "季"
    MONTH = "month", "月"
    DAY = "day", "日"
    HOUR = "hour", "时"
    MINUTE = "minute", "分"
    SECOND = "second", "秒"


class TimeToSecond(IntegerEnum):
    """ 时间转换成秒 枚举类 """

    SECOND = 1, "一秒有几秒"
    MINUTE = 60, "一分钟有几秒"
    HOUR = 60 * 60, "一小时有几秒"
    DAY = 60 * 60 * 24, "一天有几秒"
    MONTH = 60 * 60 * 24 * 30, "一个月有几秒"
    SEASON = 60 * 60 * 24 * 30 * 3, "一季度有几秒"
    YEAR = 60 * 60 * 24 * 30 * 12, "一年有几秒"
